<html>
<head>
    <title>Udis86 - Disassembler Library for x86 and x86-64</title>
    <style type="text/css">@import 'style.css';</style>
</head>
<body>
<div id="wrapper">
 <div id="content">

  <div id="banner">
    <h1>udis86</h1> 
    <h2>Disassembler Library for x86 and x86-64</h2>
  </div>

  <div id="intro">
    <p>udis86 is an easy-to-use minimalistic disassembler 
    library (<i>libudis86</i>) for the x86 and x86-64 class 
    of instruction set architectures. The primary intent of 
    the design and development of udis86 is to aid software 
    development projects that entail binary code analysis.</p>

    <div style="font-size:0.9em;">
    <a href="http://sourceforge.net/projects/udis86">Project site</a> &middot;
    <a href="http://sourceforge.net/tracker/?group_id=96233">Bug Tracking</a> &middot;
    <a href="x86/optable.xml">x86/optable.xml</a>
    </div>
  </div>


  <div id="get-udis86">
    <h3>Get sources</h3>
    <p> <big>Latest Release: <a href="http://prdownloads.sourceforge.net/udis86/udis86-1.7.tar.gz?download">udis86-1.7.tar.gz</a></big> </p>
    udis86 is now maintained using the <a href="http://git-scm.com">git</a>
    source code control system. The latest, stable code is available as the
    master branch in the 
    <a href="https://sourceforge.net/scm/?type=git&group_id=96233">sourceforge project git repository.</a>
    <pre>git://udis86.git.sourceforge.net/gitroot/udis86/udis86</pre>
    <h3>Get documentation</h3> 
    The reference manual available in <code>$SRC/docs/manual</code>, 
    or you may <a href="manual/manual.html">browse online</a>.
 </div>

  <div id="features">
<h3>libudis86</h3>
	<ul>
	<li>Full support for the <i>x86 and x86-64 (AMD64)</i> range of instruction set
	architectures.</li>
	<li>Full support  for all <i> AMD-V, INTEL-VMX, MMX, SSE, SSE2, SSE3, FPU(x87), and 
	AMD 3Dnow! </i>	instructions.</li>
	<li>Supports 16bit, 32bit, and 64bit disassembly modes.</li>
	<li>Supports instruction meta-data using XML based decode tables.</li>
	<li>Generates output in <i>AT&T</i> or <i>INTEL</i> assembler language syntaxes.</li>
	<li>Supports flexbile input methods: File, Buffer, and Hooks.</li>
	<li>Reentrant.</li>
	<li>Clean and very easy-to-use API.</li>
	</ul>
<h3>udcli</h3>

	A front-end incarnation of this library, udcli is a small command-line tool 
	for your quick disassembly needs.
    <pre>
$ echo "65 67 89 87 76 65 54 56 78 89 09 00 87" | udcli -32 -x 
0000000000000000 656789877665    mov [gs:bx+0x6576], eax
0000000000000000 54              push esp
0000000000000000 56              push esi
0000000000000000 7889            js 0x93 
0000000000000000 0900            or [eax], eax </pre>
  </div>

<a name="author"></a>
<h3>Author</h3>

<p>Authored and maintained by <a href="http://sig9.com/vivek/">Vivek Thampi</a>.
You can reach me at <i>vivek[at]sig9[dot]com</i>. Please let me know if you are
using udis86, have ideas for it, or would like to comment on it.</p>

<h3>License</h3>

<p>Udis86 is an open source project, and is distributed under the terms of
the <a href="http://udis86.git.sourceforge.net/git/gitweb.cgi?p=udis86;a=blob_plain;f=LICENSE;hb=master">BSD License</a>.</p>

<div style="text-align:center"><small>&copy; 2009 Vivek Thampi</small></div>

</div>
</div>

</body>
</html>
